# 递归：自己调用自己
# def fun():
#     print("fun")
#     # 在函数内调用函数本身
#     fun()
#
# fun()


# 使用递归计算阶层
def seq(i):
    # 退出条件
    if i == 1:
        return 1
    return seq(i - 1) * i


print(seq(4))

# 执行过程
# seq(9) * 10
# seq(8) * 9 * 10
# seq(7) * 8 * 9 * 10
# .......
# seq(1) * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10
# 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10